#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Time       :   22:05
# Author     : Y4
# Site       : 
# File       : 006 模块-re.py
# Software   : PyCharm

import re

a = 'www.mark.com'
b =re.match('www',a)            # 只能匹配开头的位置
print(b)

c = 'hello worldwo'
d = re.search('wo',c)           # 只能返回一个结果
print(d.span())         # (6, 8)
print(d.group())        # wo

print("*"*50)

e = 'hello worldwo'
f = re.findall('wo',e)              # 找到全部
print(f)                # ['wo', 'wo']

print("*"*50)

g = '18036311234'
h = re.findall('\d+',g)
print(h)                # ['18036311234']

print("*"*50)

# 编译正则表达式  相当于 /正则表达式/
patten =  re.compile('\d+')
i = re.findall(patten,g)
print(i)


print("*"*50)
j = 'hello123'
# k = j.replace('123','python')   # 字符串方式
# print(k)                # hellopython

# # sub(patten,repl,string,count=0,flags=0)     替换 : 正则表达式  替换的值  从什么地方  替换几次
patten = re.compile('\d+')
k = re.sub(patten,'python',j)
print(k)


print("*"*50)

# split(patten,string,maxsplit=0,flags=0)       分割:   正则表达式  分割的内容  最大分割
patten = re.compile('\s')
l = 'hello 123'
m = re.split(patten,l)
print(m)


'''
练习
小说
.*? 匹配一起内容
()为返回的内容
compile  re.I忽略大小写    re.S为匹配所有意思就是.*?可以匹配空格
'''
msg = '''
    <dd><a href='/13/13959/59390 25.html' >第二章 后文明时代</a></dd>
    <dd><a href='/13/13959/5939026.html '  >第三章 青铜昆仑</a></dd>
    <dd><a href='/13/13959/5939027.html' >第四章 奇树与猛兽</a></dd>
    <dd><a href='/13/13959/5939030.html' >第五章 花开</a></dd>
'''
re.compile('\d+',re.S)
re.compile('\d+',re.I)

patten = re.compile(r'''<dd><a href='.*?>(.*?)</a></dd>''',re.S)       # 只返回括号里面的内容
result = re.findall(patten,msg)
print(result)           # ['第二章 后文明时代', '第三章 青铜昆仑', '第四章 奇树与猛兽', '第五章 花开']

